package pe.com.rimac.portal.service.facturacion;

import pe.com.rimac.portal.service.facturacion.modelo.Contacto;
import pe.com.rimac.portal.service.facturacion.modelo.Persona;
import pe.com.rimac.portal.service.facturacion.modelo.Resultado;

/**
 * @author Synopsis S.A.
 */
public interface PersonaService
{
	/**
	 * Valida que la persona se encuentre registrada en las bases de datos de R&iacute;mac.
	 * 
	 * @param persona
	 * @return El resultado. La persona se encuentra registrada si el m&eacute;todo {@code Resultado#getCodigo()}
	 *         retorna {@code OK}.
	 */
	Resultado validarPersona(Persona persona);

	/**
	 * Registra el contacto para una persona jur&iacute;dica.
	 * 
	 * @param contacto
	 * @return El resultado. El contacto se ha registrado satisfactoriamente si el m&eacute;todo
	 *         {@code Resultado#getCodigo()} retorna {@code OK}.
	 */
	Resultado registrarContacto(Contacto contacto);
}
